<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
    xmlns:s="http://jboss.com/products/seam/taglib"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:rich="http://richfaces.org/rich"
    xmlns:a="http://richfaces.org/a4j"
    template="layout/template.xhtml">

<ui:define name="body">
	
	<table align="right">
		<tr>
			<td>
				<h:commandButton immediate="true"
					onclick="abrirPopup('help_online/help_usuario.seam');" 
					title="Ajuda Online"
					alt="Ajuda Online"
					image="img/help_peq.jpg"/>
			</td>
		</tr>
	</table>
		
	<h2 class="title"><a href="#">Gerenciar Usuários</a></h2><br/>
        
            <h:form id="usuarioForm">
            	
            	<h:panelGrid columns="1" rendered="#{identity.hasRole('GERENCIAR_USUARIOS_GRAVAR')}">
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Empresa:</ui:define>
            			<h:outputText value="#{manterUsuarioController.usuarioEdicao.empresa.dscNomeFantasia}"
            				rendered="#{manterUsuarioController.usuarioEdicao.empresa != null}"/>
            		</s:decorate>
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Usuário:</ui:define>
            			<h:inputText value="#{manterUsuarioController.usuarioEdicao.dscUsuario}"
            				required="true" maxlength="50"
            				style="width: 200px;"/>
            		</s:decorate>
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Nome:</ui:define>
            			<h:inputText value="#{manterUsuarioController.usuarioEdicao.dscNome}"
            				required="true" maxlength="100"
            				onkeydown="Mascara(this,Maiusculo)"
							onkeyup="Mascara(this,Maiusculo)"
            				style="width: 300px;"/>
            		</s:decorate>
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Cliente:</ui:define>
            			<h:selectOneMenu value="#{manterUsuarioController.idCliente}"
            				required="false">
						<f:selectItems value="#{manterUsuarioController.listaClientes}" />
					</h:selectOneMenu>
            		</s:decorate>
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Perfil:</ui:define>
            			<h:selectOneMenu value="#{manterUsuarioController.idPerfil}"
            				required="true">
            				<f:selectItems value="#{manterUsuarioController.listaPerfis}"/>
            			</h:selectOneMenu>
            		</s:decorate>
            		
            		<s:fragment rendered="false">
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Senha (Máx 8 dígitos):</ui:define>
            			<h:inputSecret value="#{manterUsuarioController.usuarioEdicao.dscSenha}"
            				required="false" maxlength="8"
            				style="width: 200px;"/>
            		</s:decorate>
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Confirmação senha:</ui:define>
            			<h:inputSecret value="#{manterUsuarioController.confirmacaoSenha}"
            				required="false" maxlength="8"
            				style="width: 200px;"/>
            		</s:decorate>
            		</s:fragment>
            		
            		<s:decorate template="/layout/edit.xhtml">
            			<ui:define name="label">Ativo?:</ui:define>
            			<h:selectOneMenu value="#{manterUsuarioController.usuarioEdicao.flgAtivo}" required="true">
							<f:selectItem itemLabel="SELECIONE" itemValue=""/>	
							<f:selectItem itemLabel="SIM" itemValue="T"/>
							<f:selectItem itemLabel="NÃO" itemValue="F"/>
						</h:selectOneMenu>
            		</s:decorate>
            	</h:panelGrid>
			
				<div class="actionButtons">
		            <h:commandButton id="submit" value="Salvar" action="#{manterUsuarioController.salvar}"
		            	rendered="#{identity.hasRole('GERENCIAR_USUARIOS_GRAVAR')}"
		            	onclick="javascript:if(!confirm('Tem certeza que deseja salvar?'))return false;"/>
		            	
		            <h:commandButton id="reset" value="Reiniciar senha" action="#{manterUsuarioController.reiniciarSenha()}"
		            	rendered="#{identity.hasRole('GERENCIAR_USUARIOS_GRAVAR') and manterUsuarioController.usuarioEdicao.idUsuario != null}"
		            	onclick="javascript:if(!confirm('Tem certeza que deseja reiniciar a senha?'))return false;"/>
		            	
		            <a:commandButton id="cancel" value="Cancelar" action="#{manterUsuarioController.cancelar}"
		            	ajaxSingle="true" reRender="usuarioForm"/>
		        </div>		
		        <br/>	
			</h:form>
			
			<h:form id="usuariosForm">
	        
		        <rich:dataTable value="#{manterUsuarioController.listaUsuarios}" 
		        	var="_user" id="tabelaUsuarios">
		        
		        	<rich:column>
		        		<f:facet name="header">
		        			<h:selectBooleanCheckbox value="#{manterUsuarioController.selecionadoTodos}"
		        				valueChangeListener="#{manterUsuarioController.selecionaTodos}">
		        				<a:support event="onchange" reRender="tabelaUsuarios" ajaxSingle="true"/>
		        			</h:selectBooleanCheckbox>
		        		</f:facet>
						<h:selectBooleanCheckbox value="#{_user.selecionado}"/>	        	
		        	</rich:column>
		        	
		        	<rich:column>
		        		<f:facet name="header">USUÁRIO</f:facet>
		        		<h:outputText value="#{_user.dscUsuario}"/>
		        	</rich:column>
		        	
		        	<rich:column>
		        		<f:facet name="header">NOME</f:facet>
		        		<h:outputText value="#{_user.dscNome}"/>
		        	</rich:column>
		        	
		        	<rich:column>
		        		<f:facet name="header">PERFIL</f:facet>
		        		<h:outputText value="#{_user.perfil.dscNome}"/>
		        	</rich:column>
		        	
		        	<rich:column>
		        		<f:facet name="header">ATIVO</f:facet>
		        		<h:selectOneMenu value="#{_user.flgAtivo}" disabled="true">
							<f:selectItem itemLabel="SELECIONE" itemValue=""/>	
							<f:selectItem itemLabel="SIM" itemValue="T"/>
							<f:selectItem itemLabel="NÃO" itemValue="F"/>
						</h:selectOneMenu>
		        	</rich:column>
		        	
		        	<rich:column rendered="#{identity.hasRole('GERENCIAR_USUARIOS_GRAVAR')}">
		        		<f:facet name="header">EDITAR</f:facet>
			        	<h:commandLink action="#{manterUsuarioController.editar(_user)}" value="EDITAR" />
		        	</rich:column>
		        </rich:dataTable>
		        
		        <div class="actionButtons">
		        	<h:commandButton id="remove" value="Excluir" action="#{manterUsuarioController.excluir}"
		        		rendered="#{identity.hasRole('GERENCIAR_USUARIOS_EXCLUIR')}"
		        		onclick="javascript:if(!confirm('Tem certeza que deseja excluir?'))return false;"/>
		        </div>
	        
	        </h:form>

 </ui:define>
</ui:composition>
